Schemas are commonly used to define the format of documents. For example, a schema may be used to define what elements may be included within an extensible markup language (XML) document. The schema may further describe what order the elements may be in, what content the elements may consist of and what attributes the elements may contain. Other examples of schemas are the description of an object graph used in a computer program or the definition of a database held by a database management system.
It is common for entities to map elements of one schema into elements of another schema. For example, a first company may order a part from a second company. The part order document used by the first company may be formatted in accordance with a first schema, while the second company may use a second document formatted in accordance with a second schema to process the order. In order to create the second document, the second company needs to map elements of the first schema into elements of the second schema.
FIG. 1 illustrates one prior art user interface 100 that is used to map schemas. An order processing document schema 102 is shown next to a part order schema 104. A user maps elements of the subordinate part order schema 104 to elements of the dominant order processing schema 102 by drawing lines to connect the elements. Among other disadvantages, it can be difficult to understand the relationships between schema elements with user interface 100. Even with two relatively simple schemas it can be difficult to follow the lines used to connect elements. This problem is magnified when larger schemas and more lines are used and limits the scalability of user interface 100.
Therefore, there is a need in the art for improved schema mapping user interfaces, systems and methods that accurately show the relationships between schema elements and that are scalable.